home *** CD-ROM | disk | FTP | other *** search
/ Cream of the Crop 20 / Cream of the Crop 20 (Terry Blount) (1996).iso / program / vsa256.zip / README.TXT < prev    next >
Text File  |  1996-03-24  |  6KB  |  144 lines

  1. README.TXT for VSA256 Graphics Library Version 4.0              3-24-96
  2.  
  3. -------------------- FILES IN VSA256.ZIP DISTRIBUTION -----------------
  4.  
  5.     The distribution of the VSA256 Graphics Library Version 4.0
  6. consists of the 13 files listed below.  These files are archived in the
  7. file VSA256.ZIP.  To extract, just type 'PKUNZIP VSA256' in the
  8. directory that you want the files extracted to.
  9.  
  10. VSA256MS.LIB       VSA256 Graphics Library (Microsoft C compatible).
  11. VSA256BC.LIB       VSA256 Graphics Library (Borland C Compatible).
  12. VSA.H              VSA256 Include file required in your program.
  13. VSA_FONT.H         VSA256 Include file required in your program.
  14. VSA_DEMO.C         VSA256 Demonstration program (Source Code).
  15. VSA_DEMO.EXE       VSA256 Demonstration program (Executable).
  16. VSA_DEMO.MAK       Make File for Microsoft Quick C V2.5 (IDE).
  17. VSA_DEMO.PRJ       Project file for Borland C/C++ V3.1 (IDE).
  18. VSA_DEMO.IDE       Project file for Borland C/C++ V4.0 (IDE).
  19. VSA256.TXT         The VSA256 Users Manual.
  20. ORDER.TXT          A text file order form for registration and upgrades.
  21. README.TXT         This Document
  22. DRIVERS2.EXE       A self extracting archive of VESA BIOS TSRs.
  23.  
  24.  
  25. -------------- WHAT'S NEW IN VSA256 GRAPHICS LIBRARY V4.0 --------------
  26. - MAJOR SPEED-UP of all drawing functions!                         
  27. - Added page flipping support for double buffered drawing!
  28. - Made the user definable FONT array expandable, no limit to size of 
  29.   character set.  Great for foreign languages.
  30. - Added vsa_get... functions for all existing vsa_set... functions
  31. - Changed vsa_set_viewport so that 'BOTTOM' can be set beyond bottom of 
  32.   displayable video memory.  Now the user can use off screen memory to   
  33.   store bitmaps for BitBLTs
  34. - ATI cards are auto detected to set VSA_ATI_COLOR global parameter.  
  35.   Manual override capability preserved. 
  36.  
  37. - New routine, vsa_triangle.
  38. - New routine, vsa_set_draw_page.
  39. - New routine, vsa_get_draw_page.
  40. - New routine, vsa_set_view_page.
  41. - New routine, vsa_get_view_page.
  42. - New routine, vsa_get_color.
  43. - New routine, vsa_get_text_color.
  44. - New routine, vsa_get_viewport.
  45. - New routine, vsa_get_clip_mode.
  46. - New routine, vsa_get_text_scale.
  47. - New routine, vsa_get_text_cursor_mode.
  48. - New routine, vsa_set_triangle_clip_mode.
  49. - New routine, vsa_get_triangle_clip_mode.
  50.  
  51. -------------- Compatibility With Previous VSA256 Version -------------
  52.  
  53. Between VSA256 version 2.0 and version 3.0, text support was REVAMPED!
  54. I no longer rely on the video card manufacturers BIOS to get text support.
  55. Instead I draw each character using 2D vector strokes.  The advantages 
  56. are as follows:
  57.  
  58.     - Text now works with ALL video cards!
  59.     - Now text is Infinitely scaleable.
  60.     - Text positioning resolution is down to 1 pixel.
  61.     - Background color is preserved.
  62.     - The programmer can define his own fonts in VSA_FONT.H.
  63.  
  64. Some minor incompatibilities with VSA256 version 2.0 were introduced 
  65. due to the changes and they are as follows:
  66.  
  67. -  vsa_write_string now takes x,y (in pixel coordinates) instead of 
  68.      row,col (in character coordinates) as the first two parameters.
  69. -  The first two parameters of vsa_write_string (x,y) are now int
  70.      instead of unsigned char.
  71. -  The vsa_write_char function was deleted.
  72. -  The supported ASCII characters are the printable characters 
  73.     from ASCII code 32 to ASCII code 127.
  74.  
  75. Your existing code should take very little editing to make these
  76. changes, especially if you write a macro to edit all occurrences of
  77. vsa_write_string as follows:
  78.  
  79. OLD - vsa_write_string(row,col,color,text);
  80.  
  81. NEW - vsa_write_string(col*XCharSize,row*YCharSize,color,text);
  82.  
  83.  
  84. ---------------- INSTALLING VESA BIOS EXTENSION DRIVERS ---------------
  85.  
  86. DRIVERS2.EXE is a self extracting archive file which contains the 
  87. VESA BIOS Extensions.  When executed, it will create subdirectories for 
  88. each of the video adapter manufacturers.  Within each subdirectory, it
  89. will place the respective VESA driver.  To execute:
  90.  
  91.     1. Get into the directory where you want the subdirectories 
  92.     to be created.
  93.             
  94.     2. Copy the file DRIVERS2.EXE into this directory.
  95.             
  96.     3. type drivers2 -d  (the -d tells it to create subdirectories).
  97.  
  98. --------------------------- Trouble Shooting --------------------------
  99.  
  100. 1.) Please read the VSA256.TXT document, at least sections 1 and 2, to
  101. make sure you are setting things up right.
  102.  
  103. 2.) If Turbo C says "Undefined Symbol ___brklvl in module vsa_all0",
  104. add the following line to the top of your main program file:
  105.         
  106.     unsigned __brklvl;
  107.  
  108. 3.) This version of the VSA256 Graphics Library has a fix in it to 
  109. support ATI color palettes.  Going from 2.0 to 3.0, I switched the way 
  110. I handled color palettes so that it  would work with Diamond Vipers video
  111. cards.  Unbeknownst (cool word) to me, this fix wiped out some ATI video
  112. cards.  So, now I give you a global parameter called: 
  113.  
  114.                    VSA_ATI_COLOR
  115.  
  116. Typically when you call vsa_init(), VSA_ATI_COLOR  defaults to 0, which
  117. means it is set up  for the  Diamond  Viper, NOT for ATI.  Note that this
  118. is the preferred mode since palette updates in this mode are much, much 
  119. faster.  The vsa_init() routine checks to see if you have an ATI card.  
  120. If it detects ATI, it will automatically set VSA_ATI_COLOR = 1.  If you 
  121. have an ATI card but autodetect fails, you can override it manually.  
  122. Right after your vsa_init() call, slip in VSA_ATI_COLOR = 1; and you'll 
  123. be  swimming with  ATI.  This mode relies on BIOS calls for the palette 
  124. updates, so its slower ... but it will get ATI users up and running.
  125.  
  126. 4.) If you are writing your program in C++ and you are getting linker 
  127. errors, its probably because the VSA256 library is compiled with straight
  128. C.  Contact me for a C++ compiled version of the library.
  129.  
  130. 5.) Tell me if there are any unresolved problems.
  131.  
  132.  
  133. ------------------------- Assist for 3 Compilers ----------------------
  134.         
  135. To help get you started, I have provided the "project" files for three 
  136. different compiler Integrated Development Environments (IDEs).  
  137.  
  138. Microsoft Quick C, Version 2.5  ----> VSA_DEMO.MAK
  139. Borland C/C++, Version 3.1      ----> VSA_DEMO.PRJ
  140. Borland C/C++, Version 4.0      ----> VSA_DEMO.IDE
  141.  
  142. Get in the respective IDE and just select/load the appropriate project
  143. file for your compiler.
  144.